Spatial data characterize information that is intended to represent various objects in a database. Simple objects can include points, lines, circles, squares, rectangles, etc., while complex objects can be composed, for example, from multiple simple objects. Additionally, spatial data can be derived from multiple applications such as maps, location-based services, trajectories, distributed grids, navigation information, asset exploration, distribution of resources, planning, transportation information, sensors, etc. Further, spatial data can be derived from multiple sources such as, for example, global positioning system (GPS) data, geo-tagged web data, and sensor streams.
Processing spatial data is increasingly challenging as the amount of such data continues to grow. Existing processing approaches attempt to handle spatial joins within databases or attempt to handle two-way spatial joins on MapReduce. However, a need exists for processing multi-way spatial joins on MapReduce.